1. Field of the Invention
The present invention relates to a method for performing image authentication and restoration, and more specifically, to a method for performing image authentication and restoration by hiding watermarking bits in DCT (Discrete Cosine Transform) coefficients.
2. Description of the Prior Art
Information hiding technology involves hiding information behind other information. For example, words, images, video and audio can be hidden in information such as documents, certificates, pictures, music, and advertisements. Information hiding technology can be applied in copyright protection, information authentication, annotation implantation, covert communications, multiple authorization, and so on.
Information hiding technology comprises two significant dimensions: digital watermarking and digital fingerprinting.
Digital watermarking involves hiding information related to intellectual property, such as authors, publishers, and/or company addresses, behind digital medium products.
Digital fingerprinting involves assigning serial numbers to different products. When the products are copied or shared illegally, makers can be identified according to the hidden serial numbers.
In fact, digital watermarking can be regarded as adding noise to original signals.
In recent years, digital watermarking technology has become widely adopted in tampering detection and copyright protection. There are many multimedia editing products present on the market. The said products utilize novel techniques and convenient editing tools to make it easy for a user to edit still or dynamic images. As a result, protecting original image information and preventing illegal tampering of the original images should be a concern.
A good watermark must conform to the following conditions:
1. Invisible: When watermarking information is embedded into original images, differences before and after embedding the watermarking information should not be readily apparent, nor should the watermarking information be easily extracted or damaged. Therefore, the watermarking information must be invisible to prevent it from being tampered with and to retain the details of the original images. For the said purposes, HVS (Human Vision System) and JND ((just Noticeable Difference) techniques are utilized to hide the watermarking information behind the original images.
2. Robustness: Watermarking information should be detectable after performing a signal (or geometry) processing procedure. Demands for robustness of the watermarking information depend on application. For example, the robustness demand on the watermarking information for copyright protection is higher than for image authentication. That is to say, the copyright owner should still be identifiable via the watermarking information for copyright protection even after the watermarking information has been maliciously tampered with repeatedly.
3. Security: The watermarking information may be extracted and further tampered with or copied. Therefore, the watermarking information must be encrypted to prevent extraction, and then be hidden in the original image.
4. Undeletable: The watermarking information must be embedded tightly into the original images. In other words, the watermarking information cannot be easily erasable through common signal processing methods. For most watermarking information in image authentication, once the watermarking information is removed, the original images become useless and untrustworthy.
In fact, the conditions a watermark should have depend on its characteristic. Logo watermarks can be grouped into two types: visible and invisible. For the invisible logo watermark, robustness is necessary. For an image-authentication watermark, semi-fragility is necessary.
In digital information protection, fragile watermarking, robust watermarking, and semi-fragile watermarking methods are utilized for image authentication and copyright protection.
Watermarking research comprises tampering detection for images in space or frequency domains and tampering detection for image compression. In general, tampering detection comprises vector-quantified technology, cryptography, and amplitude phase shift.
In the above-mentioned watermarking research, a tampered image detection method based on wavelet transform technology is a representative application. The said method utilizes hiding a low frequency part of an image in a high frequency part as an image authentication reference.
Another similar method involves extracting a meaningful part of the image as a watermark, hiding the meaningful part in a frequency domain of the image, and performing tampering detection via a table look-up method.
Another similar method utilizes correlations of image blocks as a reference for image authentication. This method demonstrates that the correlations of the image blocks remain unchanged before and after image compression. As a result, a watermark based on the method can be robust to JPEG compression. However, the structural characteristic of the image cannot be showed according to the method as the feature information of the image is extracted by selecting two blocks of the image at random.
An improved method involves generating SDS (Structural Digital Signature) in multi-resolution-wavelet-transformed information. SDS is robust to image filtering, image compression, and image zooming. Therefore, it can be detected easily even if an image has been tampered with.
Furthermore, another method provides a Stego-JPEG watermark based on a JPEG compression system. It can be applied in compressed videos based on DCT technology, such as MPEG series. Another method related to the said methods is to generate digital signatures in an image after encrypting feature information of the image. During image authentication, the encrypted feature information is extracted for comparison with the feature information of the selected image. A block that cannot be compared correctly is considered a tampered block. This method is robust to high quality JPEG compression due to the preservation of feature information.
A hierarchical detection method was disclosed in 2005. This method utilizes three detecting blocks (2×2, 4×4, 12×12) to execute a hierarchical detection, so that undetected tampered blocks in a first detection can be detected in second or third detections. This method increases detecting efficiency, but also increases the probability of erroneous detection.
It should be mentioned that there are five different types of image attacks. More detailed descriptions are provided as follows.
1. Removal attack: Authentication information hidden in an image is removed. Through statistic analysis, all possible authentication information is regarded as noise, and then removed. As a result, during image authentication, no related authentication information can be extracted from the image.
2. Geometric attack: Basic image processing techniques are utilized to destroy correlations of pixels in an image. This results in failure of image authentication. Common methods based on geometric attack comprise displacing, trimming, filtering, substituting, zooming, rotating, deleting columns or rows, and so on.
3. Cryptography attack: The position and content of the embedded watermark are predicted through an enumerating or brute-force method. Once the authentication information is decrypted, the embedded watermark is removed or modified easily.
4. System protocol attack: It involves embedding additional authentication information into an image so as to invalidate the original authentication information.
5. Other attacks: Compression, quantification, or format transformation may also cause loss of authentication information.
A logo watermark should be robust to every image attack mentioned above. However, for the logo watermark, it is still usable as long as it can be identified by the naked eye. On the contrary, an image authentication watermark must be robust to image attacks that cause damage to an image.
Many image authentication methods have been disclosed in recent years. A method of image authentication based on wavelet transform technology was disclosed in 1999. This method involves detecting image variations in space and frequency domains, and marking tampered blocks to determine the accuracy of the image. More description for this method is provided as follows.
(1) Parameter Definition:
f(m, n): Original image;
LεZ+: Maximum order of wavelet transform;
fk, l(m, n): Wavelet coefficient, k=h, v, d, a; l=1, 2, . . . , L;
fa, L(m, n): Wavelet coefficient of the maximum order and the minimum frequency;
w(i): Validation key, i=1, . . . , Nw;
ckey(i): Coefficient selection key, i=1, . . . , Nw;
qkey(i): Quantization key, i=1, . . . , Nw;
δ: Quantization parameter.
(2) Watermark Hiding:
First, perform a wavelet transform of order L on the original image (f(m, n)). 3 L different wavelet coefficients of the image, and the wavelet coefficient (fa, L(m, n)) of the maximum order and the minimum frequency can be obtained through the wavelet transform of order L. The said wavelet coefficients can be expressed as follows:{fk,l(m,n)}:=DWTHaar[f(m,n)]
wherein k=h, v, d, a; l=1, . . . , L.
Next, for the said wavelet coefficients, utilize ckey(i) to select coefficient positions of embedded watermarks. The steps are described as follows.
Step 1: If ckey(i)=fk,l(m,n) wherein ‘i’ lies between 1 and Nw, execute the following adjustment:
                              if          ⁢                                          ⁢                                    Q              δ                        ⁡                          (                                                f                                      k                    ,                    l                                                  ⁡                                  (                                      m                    ,                    n                                    )                                            )                                      ≠                              w            ⁡                          (              i              )                                ⊕                      qkey            ⁡                          (              i              )                                                                                    z                          k              ,              l                                ⁡                      (                          m              ,              n                        )                          =                  {                                                                                                                                        f                                                  k                          ,                          l                                                                    ⁡                                              (                                                  m                          ,                          n                                                )                                                              -                                          δ                      ⁢                                                                                          ⁢                                              2                        l                                                                              ,                                                            if                      ⁢                                                                                          ⁢                                                                        f                                                      k                            ,                            l                                                                          ⁡                                                  (                                                      m                            ,                            n                                                    )                                                                                      >                    0                                                                                                                                                                                          f                                                  k                          ,                          l                                                                    ⁡                                              (                                                  m                          ,                          n                                                )                                                              +                                          δ                      ⁢                                                                                          ⁢                                              2                        l                                                                              ,                                                            if                      ⁢                                                                                          ⁢                                                                        f                                                      k                            ,                            l                                                                          ⁡                                                  (                                                      m                            ,                            n                                                    )                                                                                      ≤                    0                                                                                                      else                                                z                          k              ,              l                                ⁡                      (                          m              ,              n                        )                          =                              f                          k              ,              l                                ⁡                      (                          m              ,              n                        )                                          end      
wherein Qδ(f) is defined as follows:
            Q      δ        ⁡          (      f      )        =      {                                        0            ,                                                if            ⁢                                                  ⁢                          ⌊                              f                                  δ                  ⁢                                                                          ⁢                                      2                    l                                                              ⌋                        ⁢                                                  ⁢            is            ⁢                                                  ⁢            even                                                            1            ,                                                if            ⁢                                                  ⁢                          ⌊                              f                                  δ                  ⁢                                                                          ⁢                                      2                    l                                                              ⌋                        ⁢                                                  ⁢            is            ⁢                                                  ⁢            odd                              
Step 2: Do not perform a quantified adjustment on every wavelet coefficient of the maximum order (L) and minimum frequency (k=a) at (m, n).
Step 3: Execute discrete wavelet reverse transform of order L to acquire the original image Z(m, n) based on the wavelet coefficient set {Zk,l(m, n)}. Z(m, n) is defined as follows:Z(m,n)=IDWTHAAR[{Zk,l(m,n)}]
wherein k=h, v, d, a, and l=1, 2, . . . , L.
(3) Method for Extracting Watermarks and Method of Tampering Assessment:
For an image Z(m, n) that a watermark has been embedded in, original watermarking information w(i) (I=1, 2, . . . , Nw) encrypted by a secret key ‘K’ is necessary, wherein the secret key ‘K’ can also be utilized to decrypt the original watermarking information. The first step is to perform a Haar discrete wavelet transform of order L on the original image Z(m, n) to generate 3 L wavelet coefficients Zk, l(m, n), wherein k=h, v, d; l=1, . . . L (l represents wavelet coefficients decomposed from different wavelet analytic sheaves).
Watermarking bits are extracted from the decomposed wavelet coefficients {Zk, l(m, n)}:=DWTHaar[Z(m, n)]. Each extracted watermarking bit is {tilde over (w)}(i)=Qδ(Zk,l(m,n))⊕qkey(i) (i=1, 2, . . . Nw). The wavelet coefficients Zk,l(m,n) are selected via ckey(i). Next, {tilde over (w)}(i) is decrypted to restore the original watermark via the secret key ‘K’. Next, determine whether the restored watermark is the same as the owner's watermark. Finally, the following formula is utilized to execute a tampering assessment:if TAF(w,{tilde over (w)})>T, 
tampering affects image authentication;
else,
the content of the image is trustworthy;
end,
wherein
            TAF      ⁡              (                  w          ,                      w            ~                          )              =                  1                  N          w                    ⁢                        ∑                      i            =            1                                N            w                          ⁢                              w            ⁡                          (              i              )                                ⊕                                    w              ~                        ⁡                          (              i              )                                            ,and T represents a tolerance limit for image tampering.
The said method not only determines whether an image is tampered with, but also acquires the tampering position via the embedded watermarking positions. Furthermore, the tolerance limit for JPEG compression can also be adjusted by a quantified intensity ‘δ’ according to the said method. However, the accuracy of the said method decreases when the image is attacked by non-malicious attacks. And the said method cannot restore the tampered blocks.
Another two methods for detecting and marking tampered blocks were disclosed in 2004. The two methods involve estimating brightness variations of an image in a space domain and AC (Alternating Current) coefficient variations of an image in a DCT domain, respectively, for hiding watermarking information.
Related studies on human vision show that the vision system of humans is not sensitive to variations of a pixel, even up to a few specific tampered pixels. Therefore, correlations of coefficients of image blocks are utilized as references for embedding watermarking information. An optimal balance between invisibility, information volume, and robustness can be achieved when embedding watermarking information according to the said method, and the said method can be also applied to video compression technology based on DCT, such as MPEG-1, MPEG-2, H.261, H.263, . . . , and so on.
More detailed description for estimating brightness variations of an image in the space domain is provided as follows.
(1) Parameter Definition:
Lreal: brightness information of central pixel;
Lmean: mean value of brightness information of adjacent pixels in a selected block;
Δ1, Δ2: thresholds for embedding and authenticating.
(2) Watermark Hiding:
Please refer to FIG. 1, FIG. 2, FIG. 3, and FIG. 4. As shown in FIG. 1, FIG. 2, FIG. 3, and FIG. 4, the selected block can be 3×3 (FIG. 1), 5×5 (FIG. 2), 7×7 (FIG. 3), or 9×9 (FIG. 4). Lreal is the value of the central pixel in a block marked as ‘∘’, and Lmean is a mean value of adjacent pixels in the selected block.
If the embedded feature bit is 1, the brightness information of the central pixel is adjusted to satisfy the following formula.Lreal≧Lmean+Δ1
If the embedded feature bit is 0, the brightness information of the central pixel is adjusted to satisfy the following formula.Lreal<Lmean−Δ2
Experimental results show that an optimal range occurs when Δ1 and Δ2 are set to 5-10% of Lreal.
(3) Method for extracting watermarks and method of performing tampering assessment:
The method for extracting the embedded watermarking information is similar to the embedding method.
First, calculate Lreal and Lmean. If Lreal≧Lmean, the extracted bit is 1. If Lreal<Lmean, the extracted bit is 0. Next, compare the extracted bit with the original feature bit to detect tampered blocks.
Detailed description for estimating AC coefficient variations of an image in the DCT domain is provided as follows.
(1) Parameter Definition:
ACi: AC coefficient in a low frequency zone of a central block;
ACi′: AC coefficient in a low frequency zone of an estimated central block;
Δ: threshold for embedding and authenticating.
(2) Watermark Hiding:
The related method was disclosed in 1999. DC (Direct Current) coefficients in 9 8×8 DCT blocks are utilized to calculate the embedded information so as to adjust the DC coefficients in the central block as watermarking information. However, the method only utilizes 4 blocks (up, down, left, right) of the 9 DCT blocks to estimate the DC coefficients (as shown in FIG. 5). The method has a higher sensitivity to human vision. That is to say, adjusting DC coefficients decreases PSNR (Peak Signal-to-Noise Ratio) of image quality. Furthermore, for estimation of Δ, it is difficult to control robustness and invisibility of the watermarking information to achieve an optimal balance.
An improved method was disclosed in 2004. This method utilizes 8 adjacent blocks to increase the estimation accuracy of AC coefficients, and embeds watermarking information into 5 AC coefficients in the low frequency zone. This method can reduce loss of image quality caused by increase of embedded information. The related formulas are expressed as follows.AC(0,1)=1.13884×(DC4−DC6)/8;AC(1,0)=1.13884×(DC2−DC8)/8;AC(0,2)=0.27881×(DC4+DC6−2DC5)/8;AC(2,0)=0.27881×(DC2+DC8−2DC5)/8;AC(1,1)=0.16213×(DC1+DC9−DC3−DC7)/8;
Next, feature bits are embedded into 5 AC coefficients of the central block according to the following formula, wherein ACi′ represents 5 AC coefficients (AC(0,1), AC(1,0), AC(0,2), AC(2,0), AC(1,1)) estimated by the aforementioned formulas.
Set ACi≧ACi′+Δ to embed bit ‘1’;
Set ACi≦ACi′−Δ to embed bit ‘0’;
(3) Method for extracting watermarks and method of performing tampering assessment:
First, compare ACi with ACi′. If ACi>ACi′, the extracted bit is ‘1’. If ACi<ACi′, the extracted bit is ‘0’.
Next, compare the extracted bits with the original feature bits to determine whether the central block has been tampered with.
This method has the following drawbacks. First, when ACi=ACi′, the extracted bit cannot be determined as 0 or 1. Second, watermark information embedding is only performed on the central block of the 9 8×8 DCT blocks. This results in a blocking effect during image authentication. Therefore, tampered blocks cannot be marked exactly.
Another two image authentication methods respectively targeting JPEG compression and MPEG compression were disclosed between 1999 and 2001. More descriptions for two related theories of the said methods are provided as follows.
1. ‘Fp’ and ‘Fq’ are defined as two non-overlapping 8×8 DCT blocks in an image. ‘Q’ is a quantization table for JPEG lossy compression, ∀u,vε[0, . . . 7], ∀p,qε[, . . . β], ‘β’ is the number of all 8×8 DCT blocks in the image,
            Δ      ⁢                          ⁢              F                  p          ,          q                      ≡                  F        p            -              F        q              ,                              F          ~                p            ⁡              (                  u          ,          v                )              ≡          integer      ⁢                          ⁢                        round          ⁡                      (                                                            F                  p                                ⁡                                  (                                      u                    ,                    v                                    )                                                            Q                ⁡                                  (                                      u                    ,                    v                                    )                                                      )                          ·                  Q          ⁡                      (                          u              ,              v                        )                                ,and it is supposed that Δ{tilde over (F)}p,q≡{tilde over (F)}p−{tilde over (F)}q.
The formula is expressed as follows:if ΔFp,q(u,v)>0, then Δ{tilde over (F)}p,q(u,v)≧0.else if ΔFp,q(u,v)<0, then Δ{tilde over (F)}p,q(u,v)≧0,else ΔFp,q(u,v)=0, then Δ{tilde over (F)}p,q(u,v)=0
2. ‘k’ is a constant threshold (k ε R), and
      k          u      ,      v        ≡      integer    ⁢                  ⁢          round      ⁡              (                  k                      Q            ⁡                          (                              u                ,                v                            )                                      )            (‘u’ and ‘v’ are arbitrary numbers). The related formula is expressed as follows:
                                          if            ⁢                                                  ⁢            Δ            ⁢                                                  ⁢                                          F                                  p                  ,                  q                                            ⁡                              (                                  u                  ,                  v                                )                                              >          k                ,                              Δ            ⁢                                                  ⁢                                                            F                  ~                                                  p                  ,                  q                                            ⁡                              (                                  u                  ,                  v                                )                                              ≥                      {                                                                                                                              k                                                  u                          ,                          v                                                                    ·                                              Q                        ⁡                                                  (                                                      u                            ,                            v                                                    )                                                                                      ,                                                                                                              k                                              Q                        ⁡                                                  (                                                      u                            ,                            v                                                    )                                                                                      ∈                    Z                                                                                                                                                                  (                                                                                                            k                              ~                                                                                      u                              ,                              v                                                                                -                          1                                                )                                            ·                                              Q                        ⁡                                                  (                                                      u                            ,                            v                                                    )                                                                                      ,                                                                    elsewhere                                                                                                                  else            ⁢                                                  ⁢            if            ⁢                                                  ⁢            Δ            ⁢                                                  ⁢                                          F                                  p                  ,                  q                                            ⁡                              (                                  u                  ,                  v                                )                                              <          k                ,                              Δ            ⁢                                                  ⁢                                                            F                  ~                                                  p                  ,                  q                                            ⁡                              (                                  u                  ,                  v                                )                                              ≤                      {                                                                                                                              k                                                  u                          ,                          v                                                                    ·                                              Q                        ⁡                                                  (                                                      u                            ,                            v                                                    )                                                                                      ,                                                                                                              k                                              Q                        ⁡                                                  (                                                      u                            ,                            v                                                    )                                                                                      ∈                    Z                                                                                                                                                                  (                                                                                                            k                              ~                                                                                      u                              ,                              v                                                                                -                          1                                                )                                            ·                                              Q                        ⁡                                                  (                                                      u                            ,                            v                                                    )                                                                                      ,                                                                    elsewhere                                                                                                                  else            ⁢                                                  ⁢            Δ            ⁢                                                  ⁢                                          F                                  p                  ,                  q                                            ⁡                              (                                  u                  ,                  v                                )                                              =          k                ,                              Δ            ⁢                                                  ⁢                                                            F                  ~                                                  p                  ,                  q                                            ⁡                              (                                  u                  ,                  v                                )                                              ≤                      {                                                                                                                              k                                                  u                          ,                          v                                                                    ·                                              Q                        ⁡                                                  (                                                      u                            ,                            v                                                    )                                                                                      ,                                                                                                              k                                              Q                        ⁡                                                  (                                                      u                            ,                            v                                                    )                                                                                      ∈                    Z                                                                                                                                                                  (                                                                                                                                            k                                ~                                                                                            u                                ,                                v                                                                                      ⁢                                                                                                                  ⁢                            or                            ⁢                                                                                                                  ⁢                                                                                          k                                ~                                                                                            u                                ,                                v                                                                                                              +                          1                                                )                                            ·                                              Q                        ⁡                                                  (                                                      u                            ,                            v                                                    )                                                                                      ,                                                                    elsewhere                                                                        
According to the said theories, the said authentication method for JPEG compression can remove uncertainty of watermarking information caused by JPEG compression. More detailed description for the said authentication method targeting JPEG compression is provided as follows.
(1) Parameter Definition:
f(m, n): Original image;
LεZ+: Maximum order of wavelet transform;
fk, l(m, n): Wavelet coefficient, k=h, v, d, a; l=1, 2, 3, . . . , L;
(2) Watermark Hiding:
First, extract N kinds of different feature vector sets from the original image, divide the original image into 8×8 blocks, and perform DCT on each block. Next, divide all blocks ‘β’ into two groups. One group is p=p1 to pβ/2. Then, utilize different thresholds ‘k’ and ‘bn’ for the N kinds of different feature vector sets, wherein ‘k’ is thresholds applied in Theorem 2.
If n=1, k=0 so that positive and negative symbols of ΔFp,q can be retained. Subsequently, ‘k’ can be set as a dynamic dualistic-determining range to ensure image authentication is correct. The more feature vector sets are extracted, the more correct the image authentication is.
Next, W:→ is defined as a map function. Subsequently, two sets, pp={p1, p2, . . . , pβ/2} and pq={q1, q2, . . . , qβ/2}, can be found to make ‘Pq’ equal to W(Pp), and satisfy the following conditions: pp∩pq=φ and pp∪pq=P (for example, pp={1, 3, 5, . . . , β−1}, pq={2, 4, . . . , β}).
Finally, calculate ΔFp,q of the bn coefficient of every block in the ‘P’ group. If ΔFp,q(v)<k, the extracted feature code ‘Zn’ is ‘0’. Otherwise, ‘Zn’ is ‘1’.
All extracted feature code sets are set as feature information of the original image. The feature information can be utilized for image authentication.
(3) Method of Image Authentication:
Based on the said feature information extracting method, tampered blocks can be determined by comparing the extracted feature code ‘{tilde over (Z)}n’ with the stored feature code ‘Zn’.
Similarly, many image restoration methods have also been disclosed in recent years. A method of image restoration was disclosed in 2001. The method involves acquiring image feature information from a DCT domain, and then utilizing the image feature information to perform image authentication or restoration. Please refer to FIG. 6. First, an original image is divided into non-overlapping 8×8 blocks, and DCT is performed on each block. It can be seen that energy in the DCT domain will gather obviously at the upper left corner in a zigzag pattern (as shown in FIG. 7, FIG. 8, FIG. 9, and FIG. 10).
Next, every DCT block is quantified via a JPEG standard quantization table. In most cases, coefficients within the quantified information lie in a low frequency zone of the DCT domain.
This method has two feature coding methods: 64-bit and 128-bit. The feature vectors generated by 128-bit feature coding are larger, but can be utilized to acquire better image quality after restoration.
Please refer to FIG. 11. The numerals in the encoding matrix represent bits, wherein all the numerals greater than 127 are set as 127. For example, 7 in the first column and the first row represents that the maximum encoding range of the corresponding quantified DCT coefficient is 7 bits.
The feature of every block in the image is recorded according to the said principle. After the feature of every block is recorded, the corresponding result is hidden in a LSB (Least Significant Bit) of the space domain.
The said method involves recording low frequency coefficients in DCT domain. This makes textures of the image fuzzier.
Another related method of image restoration based on a space domain was disclosed in 2002. The feature of this method is to restore only an edge of an image. Because of this feature, the length of the image feature vector based on this method is extremely short.
The flowchart for generating image feature information is shown in FIG. 12. The said method utilizes 4 different edge-detecting masks and the following formula to acquire the edge of the image:
            R      k        =                                  ∑                      i            =            1                    4                ⁢                              ∑                          j              =              1                        4                    ⁢                                    z              ⁡                              (                                  i                  ,                  j                                )                                      ×            Mask            ⁢                                                  ⁢                          (                              i                ,                j                            )                                                  ,      k    ∈          {              H        ,                  D          -                ,                  D          +                ,        V            }      
wherein 4 masks (H, D−, D+, and V) represent a horizontal edge mask, a vertical edge mask, a +45° diagonal mask, and a −45° diagonal mask, respectively.
After calculating ‘Rk’ of the 4 masks, the maximum value of ‘Rk’ is compared with the threshold ‘T’. If the maximum value of ‘Rk’ is greater than T, the corresponding image feature bit is set as 1 (edge). Otherwise, the corresponding image feature bit is set as 0 (background).
Therefore, only one bit is needed to represent whether a 4×4 block is the edge of the image. That is to say, for an 8×8 block, only 4 bits are needed to represent the edge feature.
Another method of image restoration was disclosed in 2005. This method involves acquiring feature vectors of an image in a space domain, and then performing Hash encoding on the acquired feature vectors to obtain 16-bit authentication information.
The flowchart of the said method is shown in FIG. 13. First, an original image is divided into non-overlapping 8×8 blocks, and then every block is divided into 2×2 sub-blocks. Next, a mean of every sub-block is calculated, and then 6 highest bits are recorded as restoration information of the sub-block.
Therefore, each 8×8 block has 96-bit corresponding restoration information. And, because 2 bits of each pixel are utilized to embed the authentication information into the original image, 128-bit feature information (block position+restoration information+authentication information) is restored in every 8×8 block. Finally, when embedding the feature information, a secret key is utilized to disorder the position of every 8×8 block for preventing feature information of a block from being embedded into itself.